package com.aizuda.boot.modules.business.negotiation.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 处理协商流程注解
 * 用于在审批流程中同步更新协商系统数据
 */
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ProcessNegotiation {
    
    /**
     * 是否启用协商处理
     */
    boolean enabled() default true;
    
    /**
     * 任务ID的SpEL表达式
     * 默认从第一个参数的taskId字段获取
     */
    String taskIdSource() default "#dto.taskId";
    
    /**
     * 备注说明
     */
    String description() default "";
} 